package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 记录对象 record
 * 
 * @author ruoyi
 * @date 2022-08-09
 */
public class Record extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 记录id */
    private Long recordId;

    /** 省份名 */
    @Excel(name = "省份名")
    private String provinceName;

    /** 实验站名 */
    @Excel(name = "实验站名")
    private String testStationName;

    /** 示范县名 */
    @Excel(name = "示范县名")
    private String demonstrationCountyName;

    /** 荔枝品种 */
    @Excel(name = "荔枝品种")
    private String litchiVarieties;

    /** 年份 */
    @Excel(name = "年份")
    private Long year;

    /** 面积 */
    @Excel(name = "面积")
    private Double area;

    /** 第一次填报日期 */
    private Date firstFillingDate;

    /** 成花率 */
    @Excel(name = "成花率")
    private Double floweringRate;

    /** 现白点日期 */
    private Date whiteDotDate;

    /** 第一次预测产量 */
    private Double firstForecastProduction;

    /** 第一次预测最早成熟期 */
    private Date firstPredictTheEarliestMaturity;

    /** 第二次填报日期 */
    private Date secondFillingDate;

    /** 坐果率 */
    private Double fruitSettingRate;

    /** 第二次预测产量 */
    private Double secondForecastProduction;

    /** 第二次预测最早成熟期 */
    private Date secondPredictTheEarliestMaturity;

    /** 第三次填报日期 */
    private Date thirdFillingDate;

    /** 产量 */
    @Excel(name = "产量")
    private Double production;

    /** 最早成熟期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成熟期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date theEarliestMaturity;

    /** 最晚成熟期 */
    private Date theLatestMaturity;

    /** 筛选条件 **/
    private String orderBy;

    public void setRecordId(Long recordId) 
    {
        this.recordId = recordId;
    }

    public Long getRecordId() 
    {
        return recordId;
    }
    public void setProvinceName(String provinceName) 
    {
        this.provinceName = provinceName;
    }

    public String getProvinceName() 
    {
        return provinceName;
    }
    public void setTestStationName(String testStationName) 
    {
        this.testStationName = testStationName;
    }

    public String getTestStationName() 
    {
        return testStationName;
    }
    public void setDemonstrationCountyName(String demonstrationCountyName) 
    {
        this.demonstrationCountyName = demonstrationCountyName;
    }

    public String getDemonstrationCountyName() 
    {
        return demonstrationCountyName;
    }
    public void setLitchiVarieties(String litchiVarieties) 
    {
        this.litchiVarieties = litchiVarieties;
    }

    public String getLitchiVarieties() 
    {
        return litchiVarieties;
    }
    public void setYear(Long year) 
    {
        this.year = year;
    }

    public Long getYear() 
    {
        return year;
    }
    public void setArea(Double area)
    {
        this.area = area;
    }

    public Double getArea()
    {
        return area;
    }
    public void setFirstFillingDate(Date firstFillingDate) 
    {
        this.firstFillingDate = firstFillingDate;
    }

    public Date getFirstFillingDate() 
    {
        return firstFillingDate;
    }
    public void setFloweringRate(Double floweringRate)
    {
        this.floweringRate = floweringRate;
    }

    public Double getFloweringRate()
    {
        return floweringRate;
    }
    public void setWhiteDotDate(Date whiteDotDate) 
    {
        this.whiteDotDate = whiteDotDate;
    }

    public Date getWhiteDotDate() 
    {
        return whiteDotDate;
    }
    public void setFirstForecastProduction(Double firstForecastProduction)
    {
        this.firstForecastProduction = firstForecastProduction;
    }

    public Double getFirstForecastProduction()
    {
        return firstForecastProduction;
    }
    public void setFirstPredictTheEarliestMaturity(Date firstPredictTheEarliestMaturity) 
    {
        this.firstPredictTheEarliestMaturity = firstPredictTheEarliestMaturity;
    }

    public Date getFirstPredictTheEarliestMaturity() 
    {
        return firstPredictTheEarliestMaturity;
    }
    public void setSecondFillingDate(Date secondFillingDate) 
    {
        this.secondFillingDate = secondFillingDate;
    }

    public Date getSecondFillingDate() 
    {
        return secondFillingDate;
    }
    public void setFruitSettingRate(Double fruitSettingRate)
    {
        this.fruitSettingRate = fruitSettingRate;
    }

    public Double getFruitSettingRate()
    {
        return fruitSettingRate;
    }
    public void setSecondForecastProduction(Double secondForecastProduction)
    {
        this.secondForecastProduction = secondForecastProduction;
    }

    public Double getSecondForecastProduction()
    {
        return secondForecastProduction;
    }
    public void setSecondPredictTheEarliestMaturity(Date secondPredictTheEarliestMaturity) 
    {
        this.secondPredictTheEarliestMaturity = secondPredictTheEarliestMaturity;
    }

    public Date getSecondPredictTheEarliestMaturity() 
    {
        return secondPredictTheEarliestMaturity;
    }
    public void setThirdFillingDate(Date thirdFillingDate) 
    {
        this.thirdFillingDate = thirdFillingDate;
    }

    public Date getThirdFillingDate() 
    {
        return thirdFillingDate;
    }
    public void setProduction(Double production)
    {
        this.production = production;
    }

    public String getOrderBy() {
        return orderBy;
    }

    public void setOrderBy(String orderBy) {
        this.orderBy = orderBy;
    }

    public Double getProduction()
    {
        return production;
    }
    public void setTheEarliestMaturity(Date theEarliestMaturity) 
    {
        this.theEarliestMaturity = theEarliestMaturity;
    }

    public Date getTheEarliestMaturity() 
    {
        return theEarliestMaturity;
    }
    public void setTheLatestMaturity(Date theLatestMaturity) 
    {
        this.theLatestMaturity = theLatestMaturity;
    }

    public Date getTheLatestMaturity() 
    {
        return theLatestMaturity;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("recordId", getRecordId())
            .append("provinceName", getProvinceName())
            .append("testStationName", getTestStationName())
            .append("demonstrationCountyName", getDemonstrationCountyName())
            .append("litchiVarieties", getLitchiVarieties())
            .append("year", getYear())
            .append("area", getArea())
            .append("firstFillingDate", getFirstFillingDate())
            .append("floweringRate", getFloweringRate())
            .append("whiteDotDate", getWhiteDotDate())
            .append("firstForecastProduction", getFirstForecastProduction())
            .append("firstPredictTheEarliestMaturity", getFirstPredictTheEarliestMaturity())
            .append("secondFillingDate", getSecondFillingDate())
            .append("fruitSettingRate", getFruitSettingRate())
            .append("secondForecastProduction", getSecondForecastProduction())
            .append("secondPredictTheEarliestMaturity", getSecondPredictTheEarliestMaturity())
            .append("thirdFillingDate", getThirdFillingDate())
            .append("production", getProduction())
            .append("theEarliestMaturity", getTheEarliestMaturity())
            .append("theLatestMaturity", getTheLatestMaturity())
            .toString();
    }
}
